前言
之前搞了一个pwn
的环境,系统是Ubuntu 16.04
,突然想改改之前用户名,感觉以前的用户名好沙雕,然后在搞的过程中也遇到了一些坑,写个简单教程记录一下,以后万一又想改了呢~~
注意: 在虚拟机环境下有条件的一定也保存快照,防止出现什么不可逆的操作,比如手贱输入了rm -rf/
可肿么办。
修改账号名称
首先进入系统,打开终端输入以下命令(因为是GUI界面,也可以在右上角设置
——>用户账号
中修改用户名和主名称)1
2sudo su #切换到root用户身份
gedit /etc/passwd #也可以用vim打开,不过我用的少,习惯gedit
将原来的用户名全部替换成新的用户名(这个里面会有7个字段,分别表示用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
)
接着修改一下用户目录(如果不改,在终端中路径显示的还是原来的,这里改一下舒服一点)1
mv /home/oldusername /home/newusername #这里oldusername表示是旧的用户名,newusername是新的用户名
这里移动完记得重启一下,再开机切到root账号
接着修改用户名和密码对应关系1
gedit /etc/shadow #将其中的旧用户名改成新的
接着也可以修改组的信息,但是好像不修改也没事,既然都要改,就彻底一点吧1
2gedit /etc/group #以下都是将旧用户名改成新的即可
gedit /etc/gshadow #各字段对应的分别是组名:密码:组管理者:组内用户列表
到这一步应该就可以了。
修改密码
因为之前踩坑有一步忘操作,导致用户名和密码关联有问题,在shadow
文件里没有新用户名的字段,导致开机各种密码错误,所以就恢复一下密码。
采用的是VMware workstations
的虚拟机安装的方式。
- 先开机,出现VMware的log图信息长摁
ESC
(在物理机上对应的是主板的logo图和进BIOS的方式类似,这里如果恩F2是进入VMware的BIOS设置) - 接着进入
Ubuntu 高级选项
,回车然后选择recover mode
那一项
Remove Link
- 此时摁
e
键,进入如下界面(不要回车)
- 删除
recovery nomodeset
- 在此行末尾加上
quiet splash rw init=/bin/bash
。并摁F10
或者ctrl+x
键,进入命令行界面。
- 可以先试着读一下密码文件
cat /etc/shadow
- 如果输入
passwd username
(username是要修改密码的用户名,如果不加用户名则默认修改当前的用户账号,即root
账户,需要注意,一般Ubuntu默认是不开启root登录的)
- 这样输入新密码就完成了,接下来直接在电源里重启就可以进系统了,网上说的什么
reboot
和shutdown
都没用apt-get相关问题
无法获取锁
报错信息:
1
2E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
报错原因
另一个程序正在运行,占用了锁,可能是由于之前下载未完成或者系统自动更新导致的。
解决方法
网上有些说kill那个进程,这个方法我试了一下,是可以的,不过比较麻烦,最简单的就是使用下面两条命令删除锁文件。1
2sudo rm /var/lib/dpkg/lock-frontend
sudo rm /var/lib/dpkg/lock
测试一下sudo apt-get install
看看是否会报错
网络问题
本机网络配置
解决方法
配置网络文件,输入命令sudo vim /etc/network/interface
输入一下内容,并保存,主要获取IP地址的方式静态或动态根据实际情况选择1
2
3
4
5
6
7
8
9
10
11auto lo
iface lo inet loopback
# The primary network interface
auto ens33 网卡名字
iface ens33 inet dhcp #动态获取IP地址
#iface ens33 inet static #静态获取IP地址
address 10.20.124.** #设置IP地址
gateway 10.20.124.1 #设置网关
netmask 255.255.255.0 #设置子网掩码
dns-nameserver 8.8.8.8 #设置DNS,解析域名
配置完成以后,重启网卡。1
2/etc/init.d/networking restart #重启所有网卡
sudo ifdown ens33;sudo ifup ens33 #重启指定网卡,ens33是网卡名字
1 | /etc/network/if-up.d #启动网卡的脚本 |